﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using FluentValidation;

namespace ERPStore.NewsLetters.ModelValidators
{
	public class CampaignValidator : AbstractValidator<Models.Campaign>
	{
		public CampaignValidator()
		{
			RuleFor(m => m.Name).NotEmpty().WithMessage("Vous devez indiquer un nom");
			RuleFor(m => m.Description).NotEmpty().WithMessage("Vous devez indiquer une description");
			RuleFor(m => m.ReplyToEmail).NotEmpty().WithMessage("Vous devez indiquer une adresse email de reponse");
			RuleFor(m => m.ReplyToEmail).EmailAddress().WithMessage("Vous devez indiquer une email valide");
			RuleFor(m => m.ReplyToEmailName).NotEmpty().WithMessage("Vous devez indiquer un nom d'email de reponse");
			RuleFor(m => m.NewsLetterId).GreaterThan(0).WithMessage("Vous devez indiquer une newsletter");
			RuleFor(m => m.SMTPServerId).GreaterThan(0).WithMessage("Vous devez indiquer un serveur SMTP");
			RuleFor(m => m.EmailListSourceId).GreaterThan(0).WithMessage("Vous devez selectionner une source d'Emails"); 
		}
	}
}
